Networks and distributed storage allow data and storage space to be shared between devices located anywhere a connection is available. These implementations may range from a single machine offering a shared drive over a home network to an enterprise-class cloud storage array with multiple copies of data distributed throughout the world. Larger implementations may incorporate Network Attached Storage (NAS) devices, Storage Area Network (SAN) devices, and other configurations of storage elements and controllers in order to provide data and manage its flow. Improvements in distributed storage have given rise to a cycle where applications demand increasing amounts of data delivered with reduced latency, greater reliability, and greater throughput. Hand-in-hand with this trend, system administrators have taken advantage of falling storage prices to add capacity wherever possible.
However, one drawback to this abundance of cheap storage is the need to maintain regular backup copies of increasing amounts of data. Even though storage devices have become more reliable, they are not infallible. When multiple storage devices are grouped in a RAID array or other grouping, the probability of failure increases with each storage device added. While many RAID configurations offer redundancy such as parity or mirroring, it is still possible for a catastrophic failure to exceed the ability of the array to recover. Furthermore, RAID and other hardware redundancy safeguards offer no protection from user errors and accidentally deleted files.
Accordingly, a need exists for ample low-cost storage space to use for data backups. One possibility is cloud-based storage service. Cloud computing providers deliver access to computing resources and data storage over a network, providing affordable, location-independent access. However, techniques for storing data in a cloud-based system may not be directly compatible with techniques for storing data in a conventional computing system. Thus, while existing techniques for data backups have been generally adequate, the techniques described herein provide a greater range of backup options that leverage the easy access and affordability of cloud storage as a backup solution.